// 做命名空间处理 namespace:true
const vuexStateGetters = {
  namespaced: true,
  state: {
    message: 'hello world',
    todos: [
      { id: 1, text: '1 xxx...', done: true },
      { id: 2, text: '2 xxx...', done: false }
    ]
  },
  getters: {
    // GET_MESSAGE: state => state.message,
    GET_TODOS: state => state.todos.filter(item => item.done)
  },
  mutations: {
    ADD_TODO: (state, todo) => state.todos.push(todo),
    ADD_TODO2: (state, todo) => setTimeout(() => state.todos.push(todo), 500)
  },
  actions: {
    ASYNC_ADD_TODO: (context, todo) => context.commit('ADD_TODO2', todo)
  }
}
export default vuexStateGetters;

// 不做命名空间处理
// const state = {
//   message: 'hello world',
//   todos: [
//     { id: 1, text: '1 xxx...', done: true },
//     { id: 2, text: '2 xxx...', done: false }
//   ]
// }
// const getters = {
//   GET_MESSAGE: state => state.message,
//   GET_TODOS: state => state.todos.filter(item => item.done)
// }
// const mutations = {
//   ADD_TODO: (state, todo) => state.todos.push(todo),
//   ADD_TODO2: (state, todo) => setTimeout(() => state.todos.push(todo), 500)
// }
// const actions = {
//   ASYNC_ADD_TODO: (context, todo) => context.commit('ADD_TODO2', todo)
// }
// export default {
//   state, getters, mutations, actions
// }